Display Positioning System

ABSTRACT

Various implementations for a display positioning system include stand with a front a back surface being connected to form a curved bend such that the bottom edges of the front and back surface are spread out to support the stand, the front surface is further connected to a stand lip forming a stand channel between the front surface and an extended portion of the stand lip, an insert configured to rest within the stand channel of the stand and including a front plate and a back plate that extend beyond a top portion of the insert and form an insert channel, the insert channel being configured to receive a first edge of a computing device and support the computing device in an elevated position, and an adapter with an optical element that is configured to rest within a first slot in the stand when not in use.

BACKGROUND

A display positioning system allows a user to situate a display, such asa tablet or mobile phone, in a stand and view the display. Bypositioning the display such that the screen is viewable, withoutrequiring a user to hold the display, the user can do additionalactivities while also viewing the display. However, displays come in alldifferent sizes and configurations. This requires that specific displaypositioning systems are designed for each of the different display sizesand configurations.

Additionally, some applications require the display to be positioned ina specific arrangement for viewing and then access the camera connectedto the display for additional activities. Oftentimes, the display mustbe situated in an exact position in order for the camera to capturecorrect information to run an application or to get consistent resultswhen the display is set up and taken down. Replicating a specific setupin order to operate the application often requires cost and timeconsuming setup of the display positioning system. These difficulties insetting up and using the display positioning system, along with the highcosts of these specialized systems have led to limited adoption of thedisplay positioning systems.

SUMMARY

According to one innovative aspect of the subject matter in thisdisclosure, a display positioning system is described. One generalaspect includes a display positioning system including: a standincluding a front surface and a back surface, the front surface and theback surface being connected to form a curved bend such that a bottomedge of the front surface and a bottom edge of the back surface arespread out to support the stand, the front surface is further connectedto a stand lip, the stand lip forming a stand channel between the frontsurface and an extended portion of the stand lip; an insert, the insertbeing configured to rest within the stand channel of the stand and theinsert including a front plate and a back plate that extend beyond a topportion of the insert and form an insert channel, the insert channelbeing configured to receive a first edge of a computing device andsupport the computing device in an elevated position; and an adapterincluding an optical element, the adapter being configured to restwithin a first slot in the stand when not in use.

Implementations may include one or more of the following features. Thesystem where the adapter includes a second slot configured to receive asecond edge of the computing device, the second edge located oppositethe first edge of the computing device when the adapter is in use. Thesystem where the optical element rests at an angle within the adapter toredirect a field of view of a video capture device coupled to thecomputing device in the elevated position. The system where the insertis removable and the stand channel is configured to receive the firstedge of the computing device and support the computing device in anon-elevated position when the insert is removed. The system where theadapter has a tapered shape to rest flush within the first slot. Thesystem where the adapter is secured within the first slot bymagnetically coupling the adapter within the first slot of the stand.The system where the elevated position allows the adapter to redirect afield of view of a video capture device of the computing device to asurface and the field of view of the video capture device includes aplay area on the surface that is within the field of view based on theelevated position. The system where the insert includes an insert visualmarker detectable by the computing device. The system where the insertvisual marker detectable by the computing device represents to thecomputing device a configuration of the computing device. The systemwhere the stand includes a stand visual marker detectable by thecomputing device. The system where the stand visual marker detectable bythe computing device represents to the computing device a configurationof the computing device. The system where the stand visual marker is oneof a color, a graphical marker, a raised portion of the stand, a notch,and a separable component. The system where the stand visual markerrepresents a calibration requirement of the computing device and thecomputing device may calibrate a video capture device based on thecalibration requirement. The system where the calibration requirementincludes one of a height of the video capture device, a type of thecomputing device, and a type of the video capture device. The systemwhere the insert includes a centering feature that positions the insertin a centered position when resting within the stand channel.

One general aspect includes a platform for virtualization of a physicalenvironment including: a stand including a front surface and a backsurface, the front surface and the back surface being joined with acurved bend along a top edge of the front surface and a top edge of theback surface such that the front surface and the back surface arepositioned opposite each other and support the stand, the stand furtherincludes: a stand lip, the stand lip being connected to the frontsurface and having an extended portion that extends upwards and forms astand channel between the extended portion and the front surface, thestand channel being configured to receive a first edge of a computingdevice and brace the computing device in an angled position; and a firstslot, the first slot in a top side of the stand, the first slot beingshaped to receive a camera adapter; and the adapter including a secondslot and an optical element, the second slot being configured to receivea second edge of the computing device, the second edge located oppositethe first edge of the computing device.

Implementations may include one or more of the following features. Theplatform further including: an insert configured to rest within thestand channel of the stand and the insert including a front plate and aback plate that extend beyond a top portion of the insert and form aninsert channel, the insert channel being configured to receive the firstedge of the computing device and support the computing device in anelevated position. The platform where the stand further includes: acabling channel forming an access area in the stand that cables may bepassed through and connect to the computing device when the standchannel receives the first edge of the computing device and braces thecomputing device in the angled position. The platform where the curvedbend is substantially high enough above that a hand of a user may fitbetween the curved bend and a surface that the stand is resting on andreposition the stand on the surface.

One general aspect includes a display positioning system including: astand configured to rest on a surface, the stand including a standchannel that is configured to receive a first edge of a computing deviceand position the computing device in an angled position, a first slot tosecure an adapter when the adapter is not in use, and a visualizationmarker; the adapter including a second slot and an optical element, thesecond slot receiving a second edge of the computing device so as toredirect a field of view of at least a portion of a video capture deviceof the computing device; the adapter being secured within the first slotwhen not in use; and the computing device, the computing device furtherincluding: the video capture device being configured to capture a videostream of the redirected field of view including the visualizationmarker; a detector being configured to detect the visualization markerin the captured video stream; and a calibrator being configured tocalibrate the video stream based on the visualization marker.

Other implementations of one or more of these aspects and other aspectsdescribed in this document include corresponding systems, apparatus, andcomputer programs, configured to perform the actions of the methods,encoded on computer storage devices. The above and other implementationsare advantageous in a number of respects as articulated through thisdocument. Moreover, it should be understood that the language used inthe present disclosure has been principally selected for readability andinstructional purposes, and not to limit the scope of the subject matterdisclosed herein.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure is illustrated by way of example, and not by way oflimitation in the figures of the accompanying drawings in which likereference numerals are used to refer to similar elements.

FIG. 1 is an example embodiment of a display positioning system.

FIG. 2 is another example embodiment of a display positioning system.

FIG. 3 is an example embodiment of the components of a displaypositioning system.

FIG. 4 is an example embodiment of a display positioning system.

FIG. 5 is another example embodiment of a display positioning system.

FIG. 6 is a back view of an example embodiment of a display positioningsystem.

FIG. 7 is a top view of an example embodiment of a display positioningsystem.

FIG. 8 is a side view of an example embodiment of a display positioningsystem.

FIG. 9 is a bottom view of an example embodiment of a displaypositioning system.

FIG. 10 is a block diagram illustrating an example computer system foruse with the display positioning system.

FIG. 11 is a block diagram illustrating an example computing device.

The Figures depict various embodiments for purposes of illustrationonly. One skilled in the art will readily recognize from the followingdiscussion that alternative embodiments of the examples illustratedherein may be employed without departing from the principles describedherein.

DETAILED DESCRIPTION

FIG. 1 is an example embodiment of a display positioning system 100. Insome implementations, the display positioning system may include a stand102 and an adapter 104. As shown in the example in FIG. 1, the stand 102may be configured to position and brace a computing device 106 in anupright and angled position and the adapter 104 may be configured to besituated over a capture device 1010 of the computing device 108 in orderto redirect a field of view of the capture device 1010 (not shown).

Redirecting the field of view of the capture device 1010 allows for thecapture device 1010 to capture images and/or video of a surfaceproximate to the stand 102. As shown in the example, by redirecting thefield of view of the capture device 1010, the capture device 1010 cancapture images and/or video of objects or interactions on the surfacewhile the computing device 106 is positioned in the stand 102. Thecomputing device 106 may also display one or more graphical userinterfaces a display while the computing device 106 is positioned in thestand 102.

In some implementations, images captured using the adapter 104 may becalibrated in order for image processing techniques to fully identifyobjects and/or for an activity application to accurately displayvisualizations of objects on a display screen. These calibrations oftenrequire camera specific information. Camera specific information mayinclude information specific to different types of cameras incorporatedinto different types of computing devices 106. For example, differentmanufacturers may use different cameras in their manufacturer specificcomputing devices. Furthermore, the cameras may be configured indifferent locations when positioned in a stand 102 as a result ofdifferent sizing options for the different computing devices.

In one example, a computing device may be a tablet with a front facingcamera. Different brands may have tablets with different dimensions,such as an iPad made by Apple, a Fire Tablet made by Amazon, and/or anAndroid tablet made by Samsung. Each of these tablets would have adifferent set of calibrations requirements when placed into a stand 102in order for the video capture device 1010 to capture video streams thatcan be used by an application. Information including the height of thecamera and camera specific information related to the type of camera orthe type of computing device 106 may be used to calibrate imagescaptured by the camera when the adapter 104 is placed over the capturedevice 1010 to redirect the field of view.

As shown in FIG. 1, the stand 102 may include a stand channel 210 thatcan receive various types of computing devices 106 and support thecomputing devices at different angles necessary for a redirected fieldof view of the camera to capture an amount of the surface proximate tothe stand 102. In some implementations, the stand channel 210 may beadapted to receive computing devices 106 that are covered by aprotective case. In further implementations, the stand channel mayreceive computing devices 106 that have a portion of an edge exposed tobe supported within the stand channel 210.

The stand 102 includes a stand lip 204 that forms a front side of thestand channel 210. In some implementations, the stand lip may include anextended portion 114 of the stand lip 204 that extends beyond the stand204 to form a front side of the stand channel 210. The stand lip 204 maybe configured to retain the computing device 106 such that when a frontportion of the computing device 106 comes into contact with the interiorof the stand lip 204, the stand lip 204 applies pressure to the frontportion of the computing device 106 to retain the computing device 106within the stand 102. In some implementations, the stand lip 204 mayinclude a retaining material, such as a rubber, that has an increasedresistance to keep the front portion of the computing device fromsliding or moving when in contact with the retaining material.

The stand 102 may include a front surface 208 of the stand 102 thatforms an opposite edge of the stand channel 210. In someimplementations, the front surface 208 may be connected to the stand lip204. In further implementations, the stand lip 204 and the front surface208 may be formed out of a single piece of material and the standchannel 210 may represent a bend in the material to form the desiredshape. The front surface 208 may extend higher in comparison to thefront lip 204 and allow a back portion of the computing device 106 torest against the front surface 208 when the computing device 106 ispositioned within the stand channel 210. The front surface 208 maypassively support the computing device 106 as the back of the computingdevice rests against the front surface 208. In some implementations, thefront surface 208 may include a retaining material, such as a rubber,that has an increased resistance to retain the front portion of thecomputing device 106 from sliding or moving when in contact with theretaining material. The front surface 208 may be high enough such thatwhen a computing device 106 is resting in the stand channel 210 of thestand 102, the stand 102 is stable, even with a tall computing device106 that exerts pressure at a top edge by changing a center of gravityof the positioning system as a result of the angle the computing device106 may be leaning.

The stand 102 may include a curved bend 110 where one side of the curvedbend 110 is formed out of a top edge of front surface 208 and the otherside of the curved bend 110 is formed out of a top edge of a backsurface 206. The curved bend 110 may form a triangular shape and mayallow for the front surface 208 and the back surface 206 to act as legsof the stand 102 and allow the stand 102 to rest on the surface. In someimplementations, the curved bend 110 may be designed to be ergonomicallygrippable. For example, the curved bend 110 may be higher on an insideedge and allow a whole hand of a user to lift and move the stand 102 bylifting up and repositioning the inside edge of the curved bend 110. Infurther implementations, the curved bend 110 may be sized to allow achild's hand to fit and easily move the stand 102 at the curved bend110, while an adult sized hand would fit two fingers. Otherimplementations and sizes are also contemplated. The specific design ofthe curved bend 110 may facilitate moving and carrying the stand 102while a computing device is resting within the stand.

The back surface 206 may be positioned opposite the front surface 208with the bottom edges of the front surface 208 and the back surface 206resting spread out away from each other on the surface. In someimplementations, the front surface 208 and the back surface 206 may beformed out of a single material and the curved bend 110 may be a bend inthe single material that forms the front surface 208 and the backsurface 206. The back surface 206 may be angled to provide support for acomputing device 106 when the computing device 106 is resting in thestand 102. In some implementations, the back surface 206 may includeadditional weights integrated into the stand 102 to keep the stand 102stable and retain the computing device 106.

In some implementations, the stand 102 may include stand visualmarkings. The stand vison markings may be specific marks, characters,images, objects, colors, graphical markers, raised portions of the stand102, notches, separable components, and other configurations, etc. thatmay be added to, molded onto, or otherwise included on the stand 102.When the adapter 104 redirects the field of view of a camera, the visualmarkings are included in the field of view and detectable by a processoranalyzing images captured by the camera. The visual markings allow foran application executed on a computing device 106 to identify whichparts of the display positioning system (e.g., stand, adapter, insert,etc.) are being used in a configuration and provide that information toa calibrator that may use specific information about each component toperform calibrations of images captured by the camera. In someimplementations, the visual markers may represent to a calibrationengine specific calibration requirements that the calibration engine canuse to calibrate the video capture device 1010. The visual markings maybe unobtrusive and located on an edge of a component. In someimplementations, the visual markings may be incorporated into a designor an object detectable by the computing device 106.

The adapter 104 may include a slot adapted to receive and retain theadapter on an edge of a computing device 106. The adapter 104 may beconfigured to be positioned over a camera and/or video capture device1010 of the computing device 106 and redirect the field of view asdescribed elsewhere herein. The adapter 104 may include an opticalelement, such as a mirror that is configured to redirect the field ofview of the video capture device 1010. In some implementations, themirrors and/or lenses can be polished or laser quality glass. In otherexamples, the mirrors and/or lenses may include a first surface that isa reflective element. The first surface can be a coating/thin filmcapable of redirecting light without having to pass through the glass ofa mirror and/or lens. In an alternative example, a first surface of themirrors and/or lenses may be a coating/thin film and a second surfacemay be a reflective element. In this example, the lights passes throughthe coating twice, however since the coating is extremely thin relativeto the glass, the distortive effect is reduced in comparison to aconventional mirror. This mirror reduces the distortive effect of aconventional mirror in a cost effective way.

In another example, the adapter 104 may include a series of opticalelements (e.g., mirrors) that wrap light reflected off of the surfacelocated in front of the computing device 106 into a rear-facing cameraof the computing device 1046 so it can be captured. The adapter 104could also adapt a portion of the field of view of the video capturedevice 1010 (e.g., the front-facing camera) and leave a remainingportion of the field of view unaltered so that multiple scenes may becaptured by the video capture device 1010. The adapter 104 could alsoinclude optical element(s) that are configured to provide differenteffects, such as enabling the video capture device 1010 to capture agreater portion of the play area. For example, the adapter 104 mayinclude a convex mirror that provides a fisheye effect to capture alarger portion of the play area than would otherwise be capturable by astandard configuration of the video capture device 1010.

In some implementations, such as the example shown in FIG. 4, theadapter 104 may be configured to be retained in a slot 404 of the stand102 when not in use. In some implementations, the adapter 104 may beretained within the slot 404 using magnetic coupling between magneticmaterial integrated into the adapter 104 and corresponding magneticmaterial integrated into the slot 404. In further implementations, theadapter 104 may be retained in the slot by tension that is appliedbetween the sides of the adapter 104 and the sides of the slot 404. Insome implementations, the adapter 104 may fit within the slot 404, suchthat the adapter does not block the stand channel 210, allowing for acomputing device 106 to be supported in the stand 102 while the adapteris retained in the slot 404. This allows for the stand 102 to support acomputing device 106 just as a display holder, and the adapter 104 issecured, instead of being loose and potentially separated (e.g., lost,etc.) from the rest of the stand 102. This allows for the stand 102 toprovide the computing device 106 to be more accessible to view andplay/interact with. The adapter 104 when used with the stand 102 and/orinsert 202 provides for proper mirror positioning at the appropriateangle to get the video capture device 1010 located a desired distancefrom the surface for image capture and/or calibration.

FIG. 2 shows another example embodiment of the display positioningsystem. In some implementations, as shown in FIG. 2, the stand 102 maybe coupled to an insert 202. The insert 202 may be adapted to hold acomputing device 106 at a raised height. Some computing devices 106include video capture devices 1010 that have a field of view that maynot include an entire play area on a surface, when the computing device106 is placed in the stand 102. By placing such a computing device inthe insert 202, the camera height is increased by the size of the insert202 and the camera is able to capture a larger field of view at theincreased height. The insert 202 may be used to correctly position avariety of computing devices 106 that would otherwise not be able tocapture a large enough field of view for various executableapplications. The increased height afforded by the insert 202accommodates camera angles on computing devices 106 that previously hadtoo small of a field of view when redirected by the adapter 104 tocapture enough of the play area on a surface.

The insert 202 may be adapted to rest in and/or couple to the standchannel 210. In some implementations, the insert 202 may snap into orcouple to specific portions of the stand 102 and may further includecentering features to ensure correct positioning of the insert 202within the stand channel 210. In some implementations, the centeringfeature may only allow the insert 202 to be inserted so that the insert202 is in a centered position in the stand 102. In some implementations,the insert 202 may include curved cutouts that are designed to restflush with the front surface 208 of the curved base. In furtherimplementations, the curved cutouts and/or the front surface 208 of thecurved base may include magnetic and/or other coupling mechanisms tofurther retain and hold the insert in place.

The insert 202 may include an insert channel 220, which similar to thestand channel 210 is configured to receive and support an edge of thecomputing device. The insert channel 220 may be formed out of a frontplate 218 forming a front surface of the insert 202 and a back plate 222forming a back surface of the insert 202. The front plate 218 and theback plate 222 may extend upward and form the insert channel 220. Theinsert channel 220 may include the front plate 218 that acts similar tothe stand lip 204 to support a front edge of the computing device 106and properly position the computing device 106 at a correct angle. Insome implementations, the insert channel 220 may include rubber moldingto assist in supporting and retaining the surfaces of the computingdevice 106 that are in contact with the insert channel 220. In someimplementations, when a computing device 106 is positioned in the insert202, the display positioning system has a higher center of gravity. Toaccommodate for the higher center of gravity, the stand 102 and/orinsert 202 may include additional weights to keep the displaypositioning system stable and upright.

In some implementations, the insert 202 has a locking mechanism thatcouples the insert 202 to the stand 102 such that the two components canbe moved around and carried similar to how the stand 102 is described asbeing carried elsewhere herein. The insert 202 may include an adaptercutout 212 to that can be grasped and allow fingers of a hand to wraparound the adapter cutout 212 to assist in moving and positioning thestand 102 and insert 202.

In some implementations, the stand 102 and/or adapter 104 may be staticcarriage for the computing device 106 that allows the computing device106 to lean at the desired angle simply by placing the computing device106 in the and allowing the computing device 106 to rest against thesurfaces of the stand 102 and/or insert 202. In further implementations,different receiving mechanisms are contemplated. For example, the standchannel 210 may include a toaster type mechanism that receives an edgeof a computing device 106 and when the computing device 106 is pressedin, the toaster type mechanism may click into place and retain thecomputing device 106 at the specific angle. In further implementations,the toaster type mechanism may be configured to receive different typesof computing devices 106 and click the different types of computingdevices 106 in at different angles. This toaster type mechanism wouldallow for different thicknesses of computing devices 106 (such as ifinstalled in cases, etc.) and not have to have different bases and/orinserts for different types of devices.

In another example, the stand channel 210 may include a sliding platethat holds an edge of a computing device 106 at different depths andallows for depth adjustments with adjustable dials based on the type ofcomputing device 106. In further examples, an application executed on acomputing device 106 may provide adjustment instructions that allow auser to adjust the dials and correctly position the computing device 106based on the adjustment instructions. In further implementations, aspring that would change dimensions based on the size of the computingdevice allows the edge of the computing device 106 to rest on the springat the correct compression.

FIG. 3 is an example embodiment of a display positioning system. Asshown in FIG. 3, the stand 102, adapter 104, and the insert 202 are eachseparable components that can be coupled together as shown in FIGS. 1and 2. The stand 102 can position a computing device 106 as shown inFIG. 1. The stand 102 can further position the computing device 106 inan elevated position as shown in FIG. 2 with the insert 202. In theelevated position, the field of view of the video capture device 1010 islarger than in a non-elevated position and the video capture device 1010can capture a greater portion of a play area adjacent to the stand 102.As shown in FIG. 3, the adapter 104 may include a slot 302. The slot 302may correspond in dimensions to an edge of the computing device 106,such as a top edge of the computing device 106. The slot 302 may be wideenough for the adapter 104 to receive the edge of the computing device106 within the slot and retain the adapter 104 in position on thecomputing device 106. As shown in FIG. 3, the stand 102 may be roundedon top and in some implementations may include the slot 404 for theadapter 104 to be placed when not in use. An external housing of theadapter 104 may be a tapered shape that is configured to rest flush withthe rest of the rounded top of the stand 102 when the adapter 104 isplaced within the slot 404 as shown in FIG. 4.

FIG. 4 is an example embodiment of a display positioning system. Asshown in FIG. 4, the adapter 104 is placed within the slot 404 and theadapter 104 rests flush with the top of the stand 102. As describedelsewhere herein, the adapter 104 may be secured within the slot 404 toreduce the risk of loss of the adapter 104. It should be understood thatthe adapter 104 could be placed in other configurations for storage onthe stand 102, such as in a compartment/recess in a bottom or side ofthe stand 102, etc.

FIG. 5 is an example embodiment of a display positioning system. Asshown in FIG. 5, the insert can be positioned within the stand channel210 of the stand 102. The insert 202 may include cutout portions on theback plate 222 to allow the insert 202 to sit flush against the curvedbend 110 of the stand 102. It should be understood that the insert 202can be configured in a variety of different shapes and is not limited tothe shape presented in the figures. In some implementations, the insert202 may include visual markings, such as insert visual markings, thatare detectable by the computing device 106. The insert visual markingsmay represent to the computing device 106 a configuration, specifically,that the computing device 106 is positioned in the stand 102 with theinsert 202. Similar to the stand visual markings, the insert visualmarkings may be graphical objects, notches, molds, ridges, text, color,etc.

FIG. 6 is a back view of an example embodiment of the displaypositioning system. As shown in FIG. 6, the adapter 104 may sit flushwithin the slot 404 of the stand 102. In some implementations, a gap maybe present between the back edge of the adapter 104 and the slot 404that allows a user to grip the adapter 104 when removing the adapter 104from the slot 404. In other implementations, a release mechanism may beused to remove the adapter 104 from the slot 404, such as a rod thatpresses the adapter 104 up and overcomes the magnetic coupling betweenthe adapter 104 and the slot 404.

FIG. 7 is a top view of an example embodiment of the display positioningsystem. As shown in FIG. 7, in some implementations, the stand channel210 may extend along the entire width of the stand 102. In furtherimplementations, the stand channel 210 may be closed on the ends and thedimensions may be configured to receive the bottom edge of the computingdevice 106. In some implementations, the insert channel 220 may extendalong the entire width of the insert 202. In further implementations,the insert channel 220 may be closed on the ends and configured toreceive the bottom edge of the computing device 106.

FIG. 8 is a side view of an example embodiment of the displaypositioning system. As shown in FIG. 8, in some implementations, theback surface 206 may extend outward at a greater angle than the frontsurface 208. In some implementations, the back surface 206 may extendoutward at a greater angle to increase the stability of the stand 102,although other configurations are also contemplated.

FIG. 9 shows a bottom view of an example embodiment of a displaypositioning system. In some implementations, the bottom of the stand 102may include a slot 902 on the bottom that can be adapted to receiveportions of various platforms, such as a car track platform and the slotallows for easy positioning and retaining of the stand 102 on suchplatforms. In some implementations, the stand 102 may have one or moremagnetic components integrated into a front (or additional surface) ofthe stand 102, to allow the stand 102 to couple to and/or interact withone or more tangible objects and/or platforms.

In some implementations, the stand 102 may have a cabling channel may beformed as an access area in the slot 902 that allows charging cables (aswell as additional connecting components) to be fed through the cablingchannel and connect to the computing device while the computing deviceis positioned in the stand 102. In some implementations, the insert 202may also include an insert cabling channel 904 that further allowscables to pass through the insert cabling channel and connect to thecomputing device 106 when the computing device 106 is positioned in theinsert 202.

It should be understood that the surface on which the stand 102 issituated is depicted as substantially horizontal in FIG. 1, it should beunderstood that the surface and the play area can be vertical orpositioned at any other angle suitable to the user for interaction. Thesurface can have any color, pattern, texture, and topography. Forinstance, the surface can be substantially flat or bedisjointed/discontinuous in nature. Non-limiting examples of a surfaceinclude a table, desk, counter, ground, a wall, a whiteboard, achalkboard, a customized surface, etc. In some implementations, thesurface may be preconfigured for certain activities within the playarea.

FIG. 10 is a block diagram illustrating an example computer system 1000for that may be used with the display positioning system. Theillustrated system 1000 includes computing devices 106 a . . . 106 n(also referred to individually and collectively as 104) and servers 1002a . . . 1002 n (also referred to individually and collectively as 1002),which are communicatively coupled via a network 1004 for interactionwith one another. For example, the computing devices 106 a . . . 106 nmay be respectively coupled to the network 1004 via signal lines and maybe accessed by users 1030 a . . . 1030 n (also referred to individuallyand collectively as 1030). The servers 1002 a . . . 1002 n may becoupled to the network 1004 via signal lines. The use of thenomenclature “a” and “n” in the reference numbers indicates that anynumber of those elements having that nomenclature may be included in thesystem 1000.

The network 1004 may include any number of networks and/or networktypes. For example, the network 1004 may include, but is not limited to,one or more local area networks (LANs), wide area networks (WANs) (e.g.,the Internet), virtual private networks (VPNs), mobile (cellular)networks, wireless wide area network (WWANs), WiMAX® networks,Bluetooth® communication networks, peer-to-peer networks, otherinterconnected data paths across which multiple devices may communicate,various combinations thereof, etc.

The computing devices 106 a . . . 106 n (also referred to individuallyand collectively as 106) are computing devices having data processingand communication capabilities. For instance, a computing device 106 mayinclude a processor (e.g., virtual, physical, etc.), a memory, a powersource, a network interface, and/or other software and/or hardwarecomponents, such as front and/or rear facing cameras, display, graphicsprocessor, wireless transceivers, keyboard, camera, sensors, firmware,operating systems, drivers, various physical connection interfaces(e.g., USB, HDMI, etc.). The computing devices 106 a . . . 106 n maycouple to and communicate with one another and the other entities of thesystem 1000 via the network 1004 using a wireless and/or wiredconnection. While two or more computing devices 106 are depicted in FIG.10, the system 1000 may include any number of computing devices 106. Inaddition, the computing devices 106 a . . . 106 n may be the same ordifferent types of computing devices.

As depicted in FIG. 10, one or more of the computing devices 106 a . . .106 n may include a video capture device 1010 (also referred toelsewhere herein as a “camera”), a detection engine 1012, and activityapplication(s) 1014. One or more of the computing devices 106 and/orcameras 1010 may also be equipped with an adapter 104 as discussedelsewhere herein. The detection engine 1012 is capable of detectingand/or recognizing a visual marker as described elsewhere herein. Thedetection engine 1012 can detect the position and orientation of thevisual marker.

In some implementations, the detection engine 1012 processes videocaptured by a camera 1010 to detect the visual marker. The activityapplication(s) 1014 are capable of determining the identity of thevisual marker and provide calibration information to the calibrator 1102based on the identity of the visual marker. Additional structure andfunctionality of the computing devices 106 are described in furtherdetail below with reference to at least FIG. 11.

The servers 1002 may each include one or more computing devices havingdata processing, storing, and communication capabilities. For example,the servers 1002 may include one or more hardware servers, serverarrays, storage devices and/or systems, etc., and/or may be centralizedor distributed/cloud-based. In some implementations, the servers 1002may include one or more virtual servers, which operate in a host serverenvironment and access the physical hardware of the host serverincluding, for example, a processor, memory, storage, networkinterfaces, etc., via an abstraction layer (e.g., a virtual machinemanager).

The servers 1002 may include software applications operable by one ormore computer processors of the servers 1002 to provide variouscomputing functionalities, services, and/or resources, and to send datato and receive data from the computing devices 106. For example, thesoftware applications may provide functionality for internet searching;social networking; web-based email; blogging; micro-blogging; photomanagement; video, music and multimedia hosting, distribution, andsharing; business services; news and media distribution; user accountmanagement; or any combination of the foregoing services. It should beunderstood that the servers 1002 are not limited to providing theabove-noted services and may include other network-accessible services.

It should be understood that the system 1000 illustrated in FIG. 10 isprovided by way of example, and that a variety of different systemenvironments and configurations are contemplated and are within thescope of the present disclosure. For instance, various functionality maybe moved from a server to a client, or vice versa and someimplementations may include additional or fewer computing devices,services, and/or networks, and may implement various functionalityclient or server-side. Further, various entities of the system 1000 maybe integrated into a single computing device or system or additionalcomputing devices or systems, etc.

FIG. 11 is a block diagram of an example computing device 106. Asdepicted, the computing device 106 may include a processor 1112, memory1114, communication unit 1116, display 1120, camera 1010, and an inputdevice 1118, which are communicatively coupled by a communications bus1108. However, it should be understood that the computing device 106 isnot limited to such and may include other elements.

The processor 1112 may execute software instructions by performingvarious input/output, logical, and/or mathematical operations. Theprocessor 1112 has various computing architectures to process datasignals including, for example, a complex instruction set computer(CISC) architecture, a reduced instruction set computer (RISC)architecture, and/or an architecture implementing a combination ofinstruction sets. The processor 1112 may be physical and/or virtual, andmay include a single core or plurality of processing units and/or cores.

The memory 1114 is a non-transitory computer-readable medium that isconfigured to store and provide access to data to the other elements ofthe computing device 106. In some implementations, the memory 1114 maystore instructions and/or data that may be executed by the processor1112. For example, the memory 1114 may store the detection engine 1012,the activity application(s) 1014, and the camera driver 1106. The memory1114 is also capable of storing other instructions and data, including,for example, an operating system, hardware drivers, other softwareapplications, data, etc. The memory 1114 may be coupled to the bus 1108for communication with the processor 1112 and the other elements of thecomputing device 106.

The communication unit 1116 may include one or more interface devices(UF) for wired and/or wireless connectivity with the network 1004 and/orother devices. In some implementations, the communication unit 1116 mayinclude transceivers for sending and receiving wireless signals. Forinstance, the communication unit 1116 may include radio transceivers forcommunication with the network 1104 and for communication with nearbydevices using close-proximity (e.g., Bluetooth®, NFC, etc.)connectivity. In some implementations, the communication unit 1116 mayinclude ports for wired connectivity with other devices. For example,the communication unit 1116 may include a CAT-5 interface, Thunderbolt™interface, FireWire™ interface, USB interface, etc.

The display 1120 may display electronic images and data output by thecomputing device 106 for presentation to a user 1030. The display 1120may include any conventional display device, monitor or screen,including, for example, an organic light-emitting diode (OLED) display,a liquid crystal display (LCD), etc. In some implementations, thedisplay 1120 may be a touch-screen display capable of receiving inputfrom one or more fingers of a user 1030. For example, the display 1120may be a capacitive touch-screen display capable of detecting andinterpreting multiple points of contact with the display surface. Insome implementations, the computing device 106 may include a graphicsadapter (not shown) for rendering and outputting the images and data forpresentation on display 1120. The graphics adapter (not shown) may be aseparate processing device including a separate processor and memory(not shown) or may be integrated with the processor 1112 and memory1114.

The input device 1118 may include any device for inputting informationinto the computing device 106. In some implementations, the input device1118 may include one or more peripheral devices. For example, the inputdevice 1118 may include a keyboard (e.g., a QWERTY keyboard), a pointingdevice (e.g., a mouse or touchpad), microphone, a camera, etc. In someimplementations, the input device 1118 may include a touch-screendisplay capable of receiving input from the one or more fingers of theuser 1030. For instance, the functionality of the input device 1118 andthe display 1120 may be integrated, and a user 1030 of the computingdevice 106 may interact with the computing device 106 by contacting asurface of the display 1120 using one or more fingers. In this example,the user 1030 could interact with an emulated (i.e., virtual or soft)keyboard displayed on the touch-screen display 1120 by using fingers tocontact the display 1120 in the keyboard regions.

The detection engine 1012 may include a detector 1104. The elements 1012and 1104 may be communicatively coupled by the bus 1108 and/or theprocessor 1112 to one another and/or the other elements 1014, 1106,1110, 1114, 1116, 1118, 1120, and/or 1010 of the computing device 106.In some implementations, one or more of the elements 1012 and 1104 aresets of instructions executable by the processor 1112 to provide theirfunctionality. In some implementations, one or more of the elements 1012and 1104 are stored in the memory 1114 of the computing device 106 andare accessible and executable by the processor 1112 to provide theirfunctionality. In any of the foregoing implementations, these components1012, and 1104 may be adapted for cooperation and communication with theprocessor 1112 and other elements of the computing device 106.

The detector 1104 includes software and/or logic for processing thevideo stream captured by the camera 1010 to detect the visual markersincluded in the video stream. The detector 1104 may be coupled to thestorage 1110 via the bus 1108 to store, retrieve, and otherwisemanipulate data stored therein. For example, the detector 1104 may querythe storage 1110 for data matching any detected line segments to visualmarkers. In all of the above descriptions, the detector 1104 may sendthe detected images to the detection engine 1012 and the detectionengine 1012 may perform the above described features.

The activity application(s) 1014 include software and/or logic forrunning an application on the computing device 106. The activityapplication(s) 1014 may be coupled to the detector 1104 via theprocessor 1112 and/or the bus 1108 to receive the information.

The camera driver 1106 includes software storable in the memory 1114 andoperable by the processor 1112 to control/operate the camera 1010. Forexample, the camera driver 1106 is a software driver executable by theprocessor 1112 for signaling the camera 1010 to capture and provide avideo stream and/or still image, etc. The camera driver 1106 is capableof controlling various features of the camera 1010 (e.g., flash,aperture, exposure, focal length, etc.). The camera driver 1106 may becommunicatively coupled to the camera 1010 and the other components ofthe computing device 106 via the bus 1108, and these components mayinterface with the camera driver 1106 via the bus 1108 to capture videoand/or still images using the camera 1010.

As discussed elsewhere herein, the camera 1010 is a video capture deviceconfigured to capture video of a surface including a play area proximateto the stand 102. The camera 1010 may be coupled to the bus 1108 forcommunication and interaction with the other elements of the computingdevice 106. The camera 1010 may include a lens for gathering andfocusing light, a photo sensor including pixel regions for capturing thefocused light and a processor for generating image data based on signalsprovided by the pixel regions. The photo sensor may be any type of photosensor including a charge-coupled device (CCD), a complementarymetal-oxide-semiconductor (CMOS) sensor, a hybrid CCD/CMOS device, etc.The camera 1010 may also include any conventional features such as aflash, a zoom lens, etc. The camera 1010 may include a microphone (notshown) for capturing sound or may be coupled to a microphone included inanother component of the computing device 106 and/or coupled directly tothe bus 1108. In some implementations, the processor of the camera 1010may be coupled via the bus 1108 to store video and/or still image datain the memory 1114 and/or provide the video and/or still image data toother elements of the computing device 106, such as the detection engine1012 and/or activity application(s) 1014. The storage 1110 is aninformation source for storing and providing access to stored data, suchas calibration data, and/or any other information generated, stored,and/or retrieved by the activity application(s) 1014.

In some implementations, the storage 1110 may be included in the memory1114 or another storage device coupled to the bus 1108. In someimplementations, the storage 1110 may be or included in a distributeddata store, such as a cloud-based computing and/or data storage system.In some implementations, the storage 1110 may include a databasemanagement system (DBMS). For example, the DBMS could be a structuredquery language (SQL) DBMS. For instance, storage 1110 may store data inan object-based data store or multi-dimensional tables comprised of rowsand columns, and may manipulate, i.e., insert, query, update, and/ordelete, data entries stored in the verification data store usingprogrammatic operations (e.g., SQL queries and statements or a similardatabase manipulation library). Additional characteristics, structure,acts, and functionality of the storage 1110 is discussed elsewhereherein.

It should be understood that the above-described example activities areprovided by way of illustration and not limitation and that numerousadditional use cases are contemplated and encompassed by the presentdisclosure. In the above description, for purposes of explanation,numerous specific details are set forth in order to provide a thoroughunderstanding of the present disclosure. However, it should beunderstood that the technology described herein may be practiced withoutthese specific details. Further, various systems, devices, andstructures are shown in block diagram form in order to avoid obscuringthe description. For instance, various implementations are described ashaving particular hardware, software, and user interfaces. However, thepresent disclosure applies to any type of computing device that canreceive data and commands, and to any peripheral devices providingservices.

In some instances, various implementations may be presented herein interms of algorithms and symbolic representations of operations on databits within a computer memory. An algorithm is here, and generally,conceived to be a self-consistent set of operations leading to a desiredresult. The operations are those requiring physical manipulations ofphysical quantities. Usually, though not necessarily, these quantitiestake the form of electrical or magnetic signals capable of being stored,transferred, combined, compared, and otherwise manipulated. It hasproven convenient at times, principally for reasons of common usage, torefer to these signals as bits, values, elements, symbols, characters,terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the following discussion,it is appreciated that throughout this disclosure, discussions utilizingterms including “processing,” “computing,” “calculating,” “determining,”“displaying,” or the like, refer to the action and processes of acomputer system, or similar electronic computing device, thatmanipulates and transforms data represented as physical (electronic)quantities within the computer system's registers and memories intoother data similarly represented as physical quantities within thecomputer system memories or registers or other such information storage,transmission or display devices.

Various implementations described herein may relate to an apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the required purposes, or it may comprise ageneral-purpose computer selectively activated or reconfigured by acomputer program stored in the computer. Such a computer program may bestored in a computer readable storage medium, including, but is notlimited to, any type of disk including floppy disks, optical disks,CD-ROMs, and magnetic disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, flashmemories including USB keys with non-volatile memory or any type ofmedia suitable for storing electronic instructions, each coupled to acomputer system bus.

The technology described herein can take the form of a hardwareimplementation, a software implementation, or implementations containingboth hardware and software elements. For instance, the technology may beimplemented in software, which includes but is not limited to firmware,resident software, microcode, etc. Furthermore, the technology can takethe form of a computer program product accessible from a computer-usableor computer-readable medium providing program code for use by or inconnection with a computer or any instruction execution system. For thepurposes of this description, a computer-usable or computer readablemedium can be any non-transitory storage apparatus that can contain,store, communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, or device.

A data processing system suitable for storing and/or executing programcode may include at least one processor coupled directly or indirectlyto memory elements through a system bus. The memory elements can includelocal memory employed during actual execution of the program code, bulkstorage, and cache memories that provide temporary storage of at leastsome program code in order to reduce the number of times code must beretrieved from bulk storage during execution. Input/output or I/Odevices (including but not limited to keyboards, displays, pointingdevices, etc.) can be coupled to the system either directly or throughintervening I/O controllers.

Network adapters may also be coupled to the system to enable the dataprocessing system to become coupled to other data processing systems,storage devices, remote printers, etc., through intervening privateand/or public networks. Wireless (e.g., Wi-Fi™) transceivers, Ethernetadapters, and modems, are just a few examples of network adapters. Theprivate and public networks may have any number of configurations and/ortopologies. Data may be transmitted between these devices via thenetworks using a variety of different communication protocols including,for example, various Internet layer, transport layer, or applicationlayer protocols. For example, data may be transmitted via the networksusing transmission control protocol/Internet protocol (TCP/IP), userdatagram protocol (UDP), transmission control protocol (TCP), hypertexttransfer protocol (HTTP), secure hypertext transfer protocol (HTTPS),dynamic adaptive streaming over HTTP (DASH), real-time streamingprotocol (RTSP), real-time transport protocol (RTP) and the real-timetransport control protocol (RTCP), voice over Internet protocol (VOIP),file transfer protocol (FTP), WebSocket (WS), wireless access protocol(WAP), various messaging protocols (SMS, MMS, XMS, IMAP, SMTP, POP,WebDAV, etc.), or other known protocols.

Finally, the structure, algorithms, and/or interfaces presented hereinare not inherently related to any particular computer or otherapparatus. Various general-purpose systems may be used with programs inaccordance with the teachings herein, or it may prove convenient toconstruct more specialized apparatus to perform the required methodblocks. The required structure for a variety of these systems willappear from the description above. In addition, the specification is notdescribed with reference to any particular programming language. It willbe appreciated that a variety of programming languages may be used toimplement the teachings of the specification as described herein.

The foregoing description has been presented for the purposes ofillustration and description. It is not intended to be exhaustive or tolimit the specification to the precise form disclosed. Manymodifications and variations are possible in light of the aboveteaching. It is intended that the scope of the disclosure be limited notby this detailed description, but rather by the claims of thisapplication. As will be understood by those familiar with the art, thespecification may be embodied in other specific forms without departingfrom the spirit or essential characteristics thereof. Likewise, theparticular naming and division of the modules, routines, features,attributes, methodologies and other aspects are not mandatory orsignificant, and the mechanisms that implement the specification or itsfeatures may have different names, divisions and/or formats.

Furthermore, the modules, routines, features, attributes, methodologiesand other aspects of the disclosure can be implemented as software,hardware, firmware, or any combination of the foregoing. Also, whereveran element, an example of which is a module, of the specification isimplemented as software, the element can be implemented as a standaloneprogram, as part of a larger program, as a plurality of separateprograms, as a statically or dynamically linked library, as a kernelloadable module, as a device driver, and/or in every and any other wayknown now or in the future. Additionally, the disclosure is in no waylimited to implementation in any specific programming language, or forany specific operating system or environment. Accordingly, thedisclosure is intended to be illustrative, but not limiting, of thescope of the subject matter set forth in the following claims.

What is claimed is:
 1. An insert for a display positioning systemcomprising: a bottom edge configured to rest within a stand channel of astand; a top edge forming an insert channel configured to receive acomputing device and support the computing device; and a body connectingthe bottom edge on a first side of the body and the top edge on a secondside of the body, the body being configured to raise the computingdevice into an elevated position when positioned in the insert channel.